package edu.service;

import edu.vo.Role;

import java.util.List;
import java.util.Optional;

public interface RoleService {
    /**
     * 保存角色信息
     * @param role 角色对象
     * @return 保存后的角色对象
     */
    Role saveRole(Role role);

    /**
     * 根据ID获取角色信息
     * @param id 角色ID
     * @return 角色对象的Optional包装
     */
    Optional<Role> getRoleById(Integer id);

    /**
     * 获取所有角色信息
     * @return 角色列表
     */
    List<Role> getAllRoles();

    /**
     * 根据ID删除角色信息
     * @param id 角色ID
     */
    void deleteRoleById(Integer id);

    /**
     * 更新角色信息
     * @param id 角色ID
     * @param role 新的角色信息
     * @return 更新后的角色对象
     */
    Role updateRole(Integer id, Role role);
}